const findP = (id:number, list = [], result:any = []) => {
    // console.log(id,list,result);

    for (let i = 0; i < list.length; i += 1) {
        const item:any = list[i]
        // 找到目标
        if (item.id === id) {
            // console.log('找到了')
            // 加入到结果中
            result.push(item.id)
            // 因为可能在第一层就找到了结果，直接返回当前结果
            if (result.length === 1) return result
            return true
        }
        // 如果存在下级节点，则继续遍历
        if (item.children) {
            // 预设本次是需要的节点并加入到最终结果result中
            result.push(item.id)
            const find = findP(id, item.children, result)
            // 如果不是false则表示找到了，直接return，结束递归
            if (find) {
                return result
            }
            // 到这里，意味着本次并不是需要的节点，则在result中移除
            result.pop()
        }
    }
    // 如果都走到这儿了，也就是本轮遍历children没找到，将此次标记为false
    // return false
}

export {
    findP
}
